作者:手机用户2502929415 | 来源:互联网 | 2023-10-12 21:03
目录
1.解释型语言和编译型语言
编译型语言
解释型语言
Java是解释型语言 or 编译型语言?
2.Java的发展历史
3.Java平台的三大版本
Java SE ( Java Platform Standard Edition)
Java EE ( Java Platform Enterprise Edition )
Java ME ( Java Platform Micro Edition)
4.Java开发环境
JDK(Java Development Kit)
JRE(Java Runtime Environment)
JVM(Java Virtual Machine)
5.Java的版本
6.Java程序的执行过程
1.解释型语言和编译型语言
编译型语言
程序在执行之前需要一个专门的编译过程,把源代码编译成机器语言,运行时不需要再次翻译,直接使用之前编译的结果就行。代表性的编译型语言有C、C++、Pascal等
特点:程序执行效率高;依赖编译器,因此跨平台性要一差些
解释型语言
源代码不是直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。代表性的解释型语言有Python、Javascript、Shell等
特点:运行效率一般较低,依赖解释器,跨平台性好
Java是解释型语言 or 编译型语言?
Java究竟是解释型语言还是编译型语言,在程序界依然讨论不休
Java同时具有解释型语言和编译型语言的特点,说Java是编译型语言,主要是因为现在的JVM为了效率,都有一些JIT(Just In-Time Compiler,即时编译器)优化,它又会把热点代码(被多次调用的方法、被多次执行的循环体)的.class的二进制代码编译为本地的机器码直接运行
说Java是编译型语言,是因为Java代码编译后的字节码文件不能直接运行在操作系统上,还需要经过JVM解释为机器码才能在对应操作系统上运行
从Java语言的特点来看,其实它更偏向于解释型语言,比如它的运行效率相比C、C++等语言要低一些、它依赖解释器且跨平台性较好。事实上,随着现代语言的发展,以及即时编译等技术的出现,解释型语言和编译型语言的差距已经逐渐缩小,不必太过纠结于此
2.Java的发展历史
Java的前身:1991年4月,Sun公司成立了Green项目小组,专攻智能家电的嵌入式控制系统,由James Gosling博士领导的绿色计划(Green Project)开始启动,这个计划的产品就是Java语言的前身:Oak(橡树)
Java的诞生:1995年5月23日,Oak语言改名为Java,并且在SunWorld大会上正式发布Java 1.0版本。Java语言第一次提出了“一次编译,到处运行”的口号
JavaOne大会:1996年5月底,Sun公司于美国旧金山举行了首届JavaOne大会
Java的三个版本:1999年6月,发布Java的三个版本:J2SE、J2EE、J2ME
命名的重大更新:2005年6月,Java SE6.0发布,J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME
Oracle公司收购Sun:2009年4月20日,Oracle公司宣布正式以74亿美元的价格收购Sun公司,Java商标从此正式归Oracle所有
JDK1.8发布:2014年3月18日,Oracle公司发布Java SE 1.8
Java最新版本:2022年,JDK19发布
3.Java平台的三大版本
Java平台标准版,以前称为 J2SE。JavaSE主要用于桌面应用开发,同时也是Java的基础
Java平台企业版,以前称为 J2EE。JavaEE主要用于Web项目的开发,包括十三种核心技术:JDBC、JNDI、EJB、RMI、Servlet、JSP、XML、JMS、Java IDL、JTS、JTA、JavaMail和JAF
Java平台微型版,以前称为 J2ME。JavaME主要为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供开发环境
4.Java开发环境
JDK(Java Development Kit)
Java开发工具包,其中包括编译工具(javac)打包工具(jar)等,也包括JRE
JRE(Java Runtime Environment)
Java运行时环境,其中包括JVM和Java核心类库,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可
JVM(Java Virtual Machine)
Java虚拟机,JVM可以把字节码解释成具体平台上的机器指令执行,这是Java能够“一次编译,到处运行”的原因
5.Java的版本
Java的版本有两种描述,一种是这样的,比如Java 8;另一种是这样的JDK1.8,它们是一个意思。通常程序员口中的Java版本,指的其实是Java的JDK版本,我们只需要知道
JDK1.8 == JDK8 == Java 8
JDK1.9 == JDK9 == Java 9
至于为什么JDK1.9 == JDK9,这其实是一个历史遗留问题,JDK1.9的下一个版本没有命名为JDK2.0,而是命名为了JDK10,对应着Java 10,有兴趣的同学可以参考这篇博客——Java--Java版本和JDK版本_MinggeQingchun的博客-CSDN博客_java最新版本是多少
目前Java最新版本是JDK19 (JDK19 == Java 19)
可以到Oracle的官网查看Java的最新版本:Java Downloads | Oracle 中国
6.Java程序的执行过程